Method and system for accurately estimating amount of materials in stores

ABSTRACT

A method and system are disclosed for estimating quantities of stored materials. Stores data can be previously collected by a person (manual stores) using manually collected data and higher fidelity stores data can be collected by automated sensors from other similar stores (monitored stores). The system takes as initial input historical data from a set of monitored stores and historical data for a set of manual stores. The system continues to receive monitored stores data and manual stores data over time. The system applies a method to the input data to generate estimates of remaining material quantities in the set of manual stores since their latest manual data collection.

CLAIM OF BENEFIT TO PRIOR APPLICATION

This application claims benefit to U.S. Provisional Patent Application63/040,759, entitled “METHOD AND SYSTEM FOR ACCURATELY ESTIMATING AMOUNTOF MATERIALS IN STORES,” filed on Jun. 18, 2020. The U.S. ProvisionalPatent Application 63/040,759 is incorporated herein by reference.

BACKGROUND

Material supply chains connect nodes of producers, distributors,vendors, and consumers, and include material storage assets at eachnode. Material producers and distributors may enter into arrangementsthat guarantee a consumer's access to the materials by allowing theproducers and distributors to control the schedule of interactions withthe store (e.g. resupplying a desired quantity of the material in thestore). In this situation, producers and distributors can choose toinstall remote sensors on stores that measure and report materialquantities so that interactions with the store may be scheduled toadequately manage the store (e.g. ensuring the store does not run out ofmaterial). Directly measuring a store can result in the most efficientsupply chain. User credentials from logins can be copied by others. Whensuch login credentials are copied, they can also be distributed toothers who may then access secure data. Also the data is usually neverencrypted and thereby has the means of being stolen without having to domuch work in deciphering what is in the file.

BRIEF DESCRIPTION OF THE DRAWINGS

However, not all stores may be measured using sensors. Some stores needto be manually managed by the producers and distributors when remotesensing is not an option. Furthermore, some consumers prefer to managetheir own stores by manually requesting some or all interactions (e.g.storage asset maintenance or resupplying material). Producers anddistributors may attempt to fit these requests into their serviceschedules as soon as possible because any delays may negatively impactthe consumer's access to materials. Attempting to anticipate theseconsumer requests can lead to operating supply chains with unnecessarilyexcessive capacity.

Features and advantages of embodiments of the claimed subject matterwill become apparent as the following Detailed Description proceeds, andupon reference to the Drawings, in which:

FIG. 1 illustrates a multi-store monitoring environment, m accordancewith some embodiments of the present disclosure.

FIG. 2 illustrates a flowchart of an example store monitoring method, inaccordance with some embodiments of the present disclosure.

Although the following Detailed Description will proceed with referencebeing made to illustrative embodiments, many alternatives,modifications, and variations thereof will be apparent in light of thisdisclosure.

DETAILED DESCRIPTION

As noted above, there are some non-trivial issues with monitoringmultiple stores that include stores without automatic monitoringcapability (e.g., via use of a sensor). As used herein, the term“monitored store” refers to a store that is monitored using a device(such as a sensor) that can automatically provide data about the stateof the store. The term “unmonitored store” or “manual store” refers to astore that is not automatically monitored, and thus data collectionregarding the state of the store is performed manually (e.g., manualinspection of the store or data received from the consumer about thestate of the store).

In some cases, producers and/or distributors of a store's material maymanually collect data from the unmonitored stores via personalinspection or requests to the consumer for the data. Materialconsumption models can be designed based on the manually collected datato attempt to estimate future or current inventory levels in the store.Such models can include constant consumption models, seasonalconsumption models, or environmentally driven consumption models (e.g.attempting to estimate heating fuel consumption from a tank usingweather information measured in the vicinity of the consumer). However,such current estimation techniques can result in supply chains servingmanual stores that are either less efficient than those servingmonitored stores or materials being depleted before they can beresupplied.

Accordingly, systems and methods are disclosed herein for providing moreaccurate models of the inventory levels of unmonitored stores. Accordingto some embodiments, methods described herein combine high-fidelitymonitored stores data (e.g. from sensor readings) with manual storesdata and generates accurate high-fidelity level estimates of manualstores to maximize the efficiency of managing all of the stores (e.g.,monitored and unmonitored). The embodiments described herein provide analternative solution to having to install a sensor on each store andallow material producers and/or distributors to install remote sensorson a subset of their total stores population and while virtuallymonitoring other manual stores to provide current estimates of themanual stores' levels with the same fidelity as a physical sensor.

Some embodiments of the present disclosure provide a method and systemfor estimating inventory levels in infrequently monitored stores usingdata collected when interacting with these stores and data collectedfrom other similar stores which are monitored with automated sensors.The provided inventory level estimates increase the amount of insightproducers and distributors of materials have into their consumermarkets. An example of clients that might apply the disclosed systems ormethods include industrial chemical producers and distributors storingliquid or gas materials in tanks. In such an industry, materials aretransported by vehicles from tanks at producer and distributor locationsto tanks at consumer locations. A producer is more cost effective ifthey can avoid storing excess material between production anddistribution. A distributor is more cost effective if they minimize thenumber of resources used to transport materials to consumer storagetanks. Accurate inventory level estimates enable such a distributor touse fewer vehicles and technicians, and for less time, to meet the samemarket demand. In some embodiments, different models can be created fordifferent time periods, such as different seasons. For example, a firstset of models may be used for particular stores during winter monthswhile a second set of models may be used for the stores during thesummer months. The different models can better reflect the differentusage rates based on the weather and may be especially useful for storesthat hold heating fuel, such as propane.

In an example embodiment, a method for estimating inventory level of anunmonitored store includes receiving first data from one or more sensorsproviding inventory levels of one or more monitored stores; receivingsecond data, which may comprise at least one of historical resupplydates and historical inventory level measurements of the unmonitoredstore; generating a model to estimate the inventory level of theunmonitored store based at least on the first data and the second data;and estimating a current inventory level for the unmonitored store basedon the model.

In another example embodiment, a method for estimating a time at whichan unmonitored store's inventory will be depleted includes receivingfirst data from one or more sensors providing inventory levels of one ormore monitored stores; receiving second data associated with theunmonitored store, where the second data may include at least one ofhistorical resupply dates and historical inventory level measurements ofthe unmonitored store; generating a model to estimate the time at whichthe unmonitored store's inventory will be depleted based at least on thefirst data and the second data; and estimating the time at which theunmonitored store's inventory will be depleted based on the model.

The methods described herein may be applied to situations beyond fluidmonitoring. According to some embodiments, the monitoring methodsdisclosed herein may be applied to any measurable inventory, such as,for example, boxes on grocery store shelves or merchandise at any store.The techniques may be embodied in devices, systems, methods, ormachine-readable mediums, as will be appreciated.

The description uses the phrases “in an embodiment” or “in embodiments,”which may each refer to one or more of the same or differentembodiments. Furthermore, the terms “comprising,” “including,” “having,”and the like, as used with respect to embodiments of the presentdisclosure, are synonymous. When used to describe a range of dimensions,the phrase “between X and Y” represents a range that includes X and Y.

Spatially relative terms, such as “beneath,” “below,” “lower,” “above,”“upper,” and the like, may be used herein for ease of description todescribe one element or feature's relationship to another element (s) orfeature (s) as illustrated in the figures. The spatially relative termsare intended to encompass different orientations of the device in use oroperation in addition to the orientation depicted in the figures. Theapparatus may be otherwise oriented (rotated 90 degrees or at otherorientations) and the spatially relative descriptors used herein maylikewise be interpreted accordingly.

FIG. 1 illustrates an example monitoring environment 100. Monitoringenvironment includes a plurality of stores 102 made up of unmonitoredstores 104 and monitored stores 106. Each of the stores in plurality ofstores 102 can include any quantifiable material such as any liquid anygas, or any objects (e.g., consumer products). Some example materials tobe held within the stores include liquid nitrogen, oxygen, propane,natural gas, oil, etc. The stores themselves can be any size and do notall have to be the same size.

Each of monitored stores 106 includes a sensor 108 that is used tocollect information about the associated store, according to anembodiment. Sensor 108 may be an electronic sensor that measures aninventory level within the store and transmits this inventory levelacross network 110 to a computing device 111 designed to receivemeasurements from each of sensor 108. In some examples, sensor 108 canmeasure other parameters such as temperature, humidity, pressure, or GPSlocation and can send this data as well across network 110.

According to an embodiment, computing device 111 collects informationacross network 110 from different sources and executes software toestimate inventory levels and/or times at which inventory will bedepleted for one or more of unmonitored stores 104. Network 110 mayrepresent the Internet or any other network infrastructure. Someexamples of network 110 include cellular communication, satellitecommunication, WIFI communication, radiofrequency (RF) communication,and fiber-optic communication.

Computing device 111 can be any computer system, such as a workstation,desktop computer, server, laptop, handheld computer, tablet computer(e.g., the iPad® tablet computer), mobile computing or communicationdevice (e.g., the iPhone® mobile communication device, the Android™mobile communication device, and the like), VR device or VR component(e.g., headset, hand glove, camera, treadmill, etc.) or other form ofcomputing or telecommunications device that is capable of communicationand that has sufficient processor power and memory capacity to performthe operations described in this disclosure. A distributed computationalsystem can be provided including a plurality of such computing devices.According to some embodiments, computing device 111 includes a processor112, memory 114, network I/O 116, and a I/O device 118. Computing device111 may also have a graphical user interface (GUI) 120 that may includea display and a user input device. In some embodiments, GUI 120represents a command-line interface.

According to some embodiments, memory 114 represents any transitory ornon-transitory internal memory or computer-readable media having encodedthereon one or more computer-executable instructions or software forimplementing techniques as variously described in this disclosure.Memory 114 can include a computer system memory or random access memory,such as a durable disk storage (which can include any suitable opticalor magnetic durable storage device, e.g., RAM, ROM, Flash, USB drive, orother semiconductor-based storage medium), a hard-drive, CD-ROM, orother computer readable media, for storing data and computer-readableinstructions or software that implement various embodiments as taught inthis disclosure. Memory 114 can be provided on the computing device 111or provided separately or remotely from the computing device 111.

According to some embodiments, processor 112 of the computing device 111is configured to execute commands to estimate inventory levels and/ortimes at which inventory will be depleted for one or more unmonitoredstores within monitoring environment 100. Processor 112 may be used toexecute computer-readable and computer-executable instructions orsoftware stored in memory 114 as well as other programs for controllingsystem hardware. Network I/O 116 can be any appropriate network chip orchipset which allows for wired or wireless connection between computingdevice 111 and communication network 110 in order to send/receive datafrom other computing devices and resources.

A user can interact with computing device 111 through I/O device 118,such as a screen or monitor, which can display one or more userinterfaces or images, including data regarding fill levels or resupplyschedules for unmonitored stores, as provided in accordance with someembodiments. Computing device 111 can include I/O devices 118 forreceiving input from a user, for example, a keyboard, a joystick, a gamecontroller, a pointing device (e.g., a mouse, a user's fingerinterfacing directly with a touch-sensitive display device, etc.), orany suitable user interface, including an AR headset. The computingdevice 111 may include any other suitable conventional I/O peripherals.In some embodiments, computing device 111 includes or is operativelycoupled to various suitable devices for performing one or more of theaspects as variously described in this disclosure.

According to some embodiments, computing device 111 receives measurementdata from sensors 108 of monitored stores 106. The data may includecurrent inventory levels of monitored stores 106 and can be received ata fairly high frequency depending on the configurable nature of sensor108. For example, sensor 108 may be designed to transmit data multipletimes a day or once a day. In some embodiments, sensor 108 takesmultiple data measurements at a first frequency but transmits the dataat a second frequency lower than the first frequency. The frequency ofdata transmission may depend on what material is being held within agiven store and how often it is being used.

Computing device 111 also receives historical data from other sourcesregarding both monitored stores 106 and unmonitored stores 104,according to an embodiment. For example, computing device 111 receiveshistorical manual stores data 122, which may include past dates that oneor more of unmonitored stores 104 was resupplied and/or how much wasresupplied. Historical manual stores data 122 may also include manualfill-level readings that had been taken of one or more of theunmonitored stores 104. Computing device may also receive historicalmonitored stores data 124, which may include past dates that one or moreof the monitored stores 106 was resupplied and/or how much wasresupplied. Historical monitored stores data 124 may also include anypast sensor readings from one or more of the monitored stores 106.

According to some embodiments, computing device 111 also receives mostrecent data with regards to the monitored stores 106 and unmonitoredstores 104 in order to continually update and refine models forestimating the inventory levels and/or times at which inventory will bedepleted in the monitored stores 106. For example, computing device 111may receive latest measurements from any of sensors 108 to provide themost recent inventory level measurements of any of monitored stores 106.Computing device 111 may also receive new manual stores data 126corresponding to a latest manual measurement taken from one or more ofunmonitored stores 104.

According to some embodiments, each of historical manual stores data122, historical monitored stores data 124, and new manual stores data126 is received from a second computing device, such as a computingdevice associated with the plurality of stores 102. The second computingdevice may be owned by a consumer that uses the materials stored inplurality of stores 106, and thus the consumer provides the additionaldata about their stores to computing device 111. In some embodiments,the additional data is provided to computing device 111 from differentsources. For example, a consumer may provide some of the data (e.g., newmanual stores data 126) via their smartphone or other computer, while aseparate computer keeps track of the historical manual stores data 122and historical monitored stores data 124 and sends this dataautomatically to computing device 111.

FIG. 2 is a flow diagram of an example method 200 for estimating theinventory levels of one or more manual stores, in accordance with anembodiment. Method 200 may be performed, for example, in whole or inpart by computing device 111 as described with respect to FIG. 1. Theoperations, functions, or actions described in the respective blocks ofexample method 200 may also be stored as computer-executableinstructions in a non-transitory computer-readable medium, such as amemory and/or a data storage of a computing system. As will be furtherappreciated in light of this disclosure, for this and other processesand methods disclosed herein, the functions performed in method 200 maybe implemented in a differing order. Additionally, or alternatively, twoor more operations may be performed at the same time or otherwise in anoverlapping contemporaneous fashion.

Method 200 includes the collection of both manual data at block 202(from one or more unmonitored stores) and monitored data at block 204(from one or more monitored stores), according to an embodiment. Themanual data may include historical data collected from N manual stores,where the historical data includes one or more of dates that the manualstore was resupplied, the final liquid level amount of the store afterbeing resupplied, and any liquid level measurements taken betweenresupplies. Similarly, the monitored data may include historical datacollected from M monitored stores over the same time period, where thehistorical data includes one or more of dates that the monitored storewas resupplied, the final liquid level amount of the store after beingresupplied, and any liquid level measurements taken between resupplies.New data may be added to the collections of manual and monitored storesdata as it is sent from a client.

According to an embodiment, the collected historical datasets areconverted into a series of time-stamped inventory level measurements foreach store (both manual stores at block 206 and monitored stores atblock 208). For the example application of an industrial chemicaldistributor using this system, the manually collected data could betaken when tanks are resupplied, and data collected from monitored tanksit taken automatically by a remote sensor. Each measurement for eachtank may also be marked as to which tank it corresponds.

According to an embodiment, U measurements may be collected for eachmanual store. Then, for each manual store, method 200 proceeds to block210 where the amount of materials consumed between each measurement iscalculated by taking the difference between the inventory levels (e.g.gallons of chemicals) and saving this difference as a consumptionseries. For a total of N manual stores, the consumption series each havea length of (U−1). The amount of time between each manual store'smeasurements may be calculated and saved as a (U−1) series of timeperiods with the consumption series, according to an embodiment.Similarly, 5 measurements may be collected for each monitored store.Then, for each monitored store, method 200 proceeds to block 212 wherethe amount of materials consumed between each sensor measurement iscalculated by first removing changes in inventory level that occur whenthe materials are replenished and then by taking the difference betweenthe inventory levels (e.g. gallons of chemicals), according to anembodiment. Each of these may be saved for a total of M consumptionseries with length (5−1).

According to an embodiment, method 200 continues to block 214 where, foreach manual store, the monitored store's consumption series data isresampled by calculating the cumulative sum of monitored materialconsumed between each manual store's level measurement, resulting in Mre-sampled monitored stores consumption series now each with length(U−1). In the event a monitored store did not provide data during thetime period between any two manual store measurements, the value forre-sampled consumption series for that time period may be set to a nullvalue. These M series are combined with their corresponding manualstore's consumption series to generate N matrices of size (U−1) by(M+1), according to an embodiment.

According to an embodiment, method 200 continues to block 216 where athreshold T1 is applied to the number of non-null values in each manualstore's matrix of consumption series. The threshold may be applied tominimize the probability of spurious correlations in later operations.For each manual store's consumption matrix, any monitored store'sre-sampled consumption series with fewer than T1 non-null values may beremoved from the matrix.

According to an embodiment, method 200 continues to block 218 where, foreach manual store's consumption matrix with M1 remaining re-sampledmonitored consumption series, the manual store's consumption series arepaired with each of the M1 monitored consumption series and both M1correlation coefficients and null-hypothesis probabilities aredetermined.

According to an embodiment, at block 220 thresholds T2 and T3 areapplied to the correlation coefficients and null-hypothesisprobabilities. This may be performed to minimize the computationalcomplexity of subsequent operations. For each manual store's consumptionmatrix, any correlation coefficient below T2 or null-hypothesisprobability above T3 causes the monitor consumption series used togenerate them to be removed from the matrix.

Method 200 proceeds to block 222 where a regression analysis is used tomodel the manual store's consumption series as a continuous function ofthe monitored store's re-sampled consumption series for each manualstore's consumption matrix and for each M2 remaining re-sampledmonitored consumption series, according to an embodiment. This generatesM2 equations, which may be referred to as models, each with oneindependent variable and one dependent variable with the general formy=f(x) where y is the estimated amount of material consumed by themanual store and x is the amount consumed by the monitored store duringthe same time period.

According to an embodiment, method 200 proceeds to block 224 where, foreach manual store's consumption matrix and for each M2 model, there-sampled monitor consumption series is used as input to theirrespective model and each model's estimate of the manual store'sconsumption series is calculated. Here each re-sampled monitorconsumption series is already of length (U−1), and so each model'soutput is the same length as the manual store's consumption sense.

According to an embodiment, method 200 proceeds to block 226 where, foreach manual store's consumption matrix, for each M2 model, and for each(U−1) consumption estimates (U−1) error values are calculated asfollows:

$\frac{\begin{matrix}\left( {{{Model}\mspace{14mu}{Estimated}\mspace{14mu}{Consumption}} -} \right. \\\left. {{Actual}\mspace{14mu}{Manual}\mspace{14mu}{Store}\mspace{14mu}{Consumption}} \right)\end{matrix}}{{Number}\mspace{14mu}{of}\mspace{14mu}{Days}\mspace{14mu}{in}\mspace{14mu}{Time}\mspace{14mu}{Period}}$

According to an embodiment, for each manual store's consumption matrixand for each M2 model, the average of the error values and the variancethe error values are calculated at block 228.

According to an embodiment, method 200 continues to block 230 where, foreach manual store's consumption matrix and for each M2 model, the modelsare ranked in order of decreasing error valance.

According to an embodiment, for each manual store's consumption matrix,a threshold M3 is used at block 232 and all but the top M3 models areremoved at block 234. The remaining models correspond to those whichhave the smallest error variance. If there are fewer than M3 modelsfollowing the operations performed in blocks 230, 232, and 234, then allremaining models are taken.

According to an embodiment, method 200 proceeds to blocks 236 and 238where each manual store's set of models are combined and saved alongwith unique identifiers of the monitored stores from which they werederived for comparison with future models that may be built withadditional manual stores data.

According to an embodiment, for each manual store, if there are modelsfrom previous iterations collected at block 238 that were derived fromthe associated monitored store then the terms of the new model arecompared to the terms of the previous model at block 240. For example,if the previous model took the form of y=A1x3+B1x2+C1x and the new modeltool the form y=A2x3+B2 x2+C2 x, then the comparison of terms wouldinclude A1 to A2, B1 to B2, and C1 to C2. If any of these term pairs aredifferent by more than a threshold M4, then an alert may be generated sothat a user may take a closer look at the data used to generate themodel before accepting its level estimate.

According to an embodiment, at block 242 the latest manual storemeasurement is used to initialize a digital copy of each manual store'sinventory.

According to an embodiment, as new monitor data is received over time asillustrated by block 244, the manual store's consumption is estimatedusing data from the monitored stores in each manual store's set ofmodels at block 246. According to some embodiments, this process may berepeated as often as, but no faster than, monitor data is received togenerate level estimates at the similar fidelity as the monitor data.This process may also be repeated at an intermediate frequency (e.g.daily) to cover any reporting time period. For each manual store, foreach model, and for each reporting time period the method includesidentifying which monitored tanks in the combined model have dataavailable for use within that time period. For each K monitored tankthat has data available with standard deviation of error CJ, the systemcalculates weight terms co as follows:

$\frac{1}{\text{?}}$$\text{?} - {\sum\limits_{i = 1}^{K}{\text{?}\frac{1}{2}}}$?indicates text missing or illegible when filed

The output of the i'th model is weighted by multiplying its output byits respective weight term coi. The sum of the weighted outputs for eachreporting time period are taken together to estimate the manual store'sconsumption during the reporting time period, according to anembodiment. The estimated consumption may then be subtracted from thedigital copy of the manual store to calculate the current level estimatefor the manual store at block 248. In some embodiments, this value alsoupdates the digital copy of the manual store. At block 250, the levelestimates for the manual store may be saved for future use, outputtedfor viewing by a user, or used along with the manual historical data todetermine a future time at which the inventory will be depleted for themanual store.

Unless specifically stated otherwise, it may be appreciated that termssuch as “processing,” “computing,” “calculating,” “determining,” or thelike refer to the action and/or process of a computer or computingsystem, or similar electronic computing device, that manipulates and/ortransforms data represented as physical quantities (for example,electronic) within the registers and/or memory units of the computersystem into other data similarly represented as physical quantitieswithin the registers, memory units, or other such information storagetransmission or displays of the computer system. The embodiments are notlimited in this context.

Numerous specific details have been set forth herein to provide athorough understanding of the embodiments. It will be understood inlight of this disclosure, however, that the embodiments may be practicedwithout these specific details. In other instances, well knownoperations and components have not been described in detail so as not toobscure the embodiments. It can be appreciated that the specificstructural and functional details disclosed herein may be representativeand do not necessarily limit the scope of the embodiments. In addition,although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described herein.Rather, the specific features and acts described herein are disclosed asexample forms of implementing the claims.

I claim:
 1. A method for estimating inventory level of an unmonitoredstore, the method comprising: receiving first data from one or moresensors providing inventory levels of one or more monitored stores;receiving second data associated with the unmonitored store; generatinga model to estimate the inventory level of the unmonitored store basedat least on the first data and the second data; and estimating a currentinventory level for the unmonitored store based on the model.
 2. Themethod of claim 1, wherein the second data comprises at least one ofhistorical resupply dates for the unmonitored store and historicalinventory level measurements for the unmonitored store.
 3. The method ofclaim 1 or 2, further comprising measuring the first data at a firstfrequency and measuring the second data at a second frequency lower thanthe first frequency.
 4. The method of any one of claims 1-3, wherein themodel is a first model, and the generating comprises generating thefirst model for a first seasonal time period, and the method comprisesgenerating a second model for a second seasonal time period differentfrom the first seasonal time period.
 5. The method of any one of claims1-4, further comprising: receiving third data associated with theunmonitored store; and updating the model to more accurately predict theinventory level of the unmonitored store based on the third data.
 6. Themethod of claim 5, further comprising receiving fourth data from the oneor more sensors associated with the one or more monitored stores.
 7. Themethod of claim 6, further comprising applying the fourth data to themodel to estimate a consumption rate of the unmonitored store.
 8. Themethod of claim 6 or 7, wherein receiving the fourth data comprisesreceiving a most recent inventory level measurement for the one or moremonitored stores.
 9. A computer program product including one or morenon-transitory machine-readable media having instructions encodedthereon that when executed by at least one processor causes a processfor estimating inventory levels of an unmonitored store to be carriedout, the process comprising: receiving first data from one or moresensors providing inventory levels of one or more monitored stores;receiving second data associated with the unmonitored store; generatinga model to predict the inventory level of the unmonitored store based atleast on the first data and the second data; and estimating a currentinventory level for the unmonitored store based on the model.
 10. Thecomputer program product of claim 9, wherein the second data comprisesat least one of historical resupply dates for the unmonitored store andhistorical inventory level measurements for the unmonitored store. 11.The computer program product of claim 9 or 10, the process furthercomprising measuring the first data at a first frequency and measuringthe second data at a second frequency lower than the first frequency.12. The computer program product of any one of claims 9-11, wherein themodel is a first model, and the generating comprises generating thefirst model for a first seasonal time period, and the method comprisesgenerating a second model for a second seasonal time period differentfrom the first seasonal time period.
 13. The computer program product ofany one of claims 9-12, the process further comprising: receiving thirddata associated with the unmonitored store; and updating the model tomore accurately predict the inventory level of the unmonitored storebased on the third data.
 14. The computer program product of claim 13,the process further comprising receiving fourth data from the one ormore sensors associated with the one or more monitored stores.
 15. Thecomputer program product of claim 14, the process further comprisingapplying the fourth data to the model to estimate a consumption rate ofthe unmonitored store.
 16. The computer program product of claim 14 or15, wherein receiving the fourth data comprises receiving a most recentinventory level measurement for the one or more monitored stores.
 17. Amethod for estimating a time at which an unmonitored store's inventorywill be depleted, the method comprising: receiving first data from oneor more sensors providing inventory levels of one or more monitoredstores; receiving second data associated with the unmonitored store;generating a model to estimate the time at which the unmonitored store'sinventory will be depleted based at least on the first data and thesecond data; and estimating the time at which the unmonitored store'sinventory will be depleted based on the model.
 18. The method of claim17, wherein the second data comprises at least one of historicalresupply dates for the unmonitored store and historical inventory levelmeasurements for the unmonitored store.
 19. The method of claim 17 or18, further comprising measuring the first data at a first frequency andmeasuring the second data at a second frequency lower than the firstfrequency.
 20. The method of any one of claims 17-19, wherein the modelis a first model, and the generating comprises generating the firstmodel for a first seasonal time period, and the method comprisesgenerating a second model for a second seasonal time period differentfrom the first seasonal time period.
 21. The method of any one of claims17-20, further comprising: receiving third data associated with theunmonitored store; and updating the model to more accurately estimatethe time at which the unmonitored store's inventory will be depletedbased on the third data.
 22. The method of claim 21, further comprisingreceiving fourth data from the one or more sensors associated with theone or more monitored stores.
 23. The method of claim 22, furthercomprising applying the fourth data to the model to estimate aconsumption rate of the unmonitored store.
 24. The method of claim 22 or23, wherein receiving the fourth data comprises receiving a most recentinventory level measurement for the one or more monitored stores.
 25. Acomputer program product including one or more non-transitorymachine-readable media having instructions encoded thereon that whenexecuted by at least one processor causes a process for estimating atime at which an unmonitored store's inventory will be depleted to becarried out, the process comprising: receiving first data from one ormore sensors providing inventory levels of one or more monitored stores;receiving second data associated with the unmonitored store; generatinga model to estimate the time at which the unmonitored store's inventorywill be depleted based at least on the first data and the second data;and estimating the time at which the unmonitored store's inventory willbe depleted based on the model.
 26. The computer program product ofclaim 25, wherein the second data comprises at least one of historicalresupply dates for the unmonitored store and historical inventory levelmeasurements for the unmonitored store.
 27. The computer program productof claim 25 or 26, the process further comprising measuring the firstdata at a first frequency and measuring the second data at a secondfrequency lower than the first frequency.
 28. The computer programproduct of any one of claims 25-27, wherein the model is a first model,and the generating comprises generating the first model for a firstseasonal time period, and the method comprises generating a second modelfor a second seasonal time period different from the first seasonal timeperiod.
 29. The computer program product of any one of claims 25-28, theprocess further comprising: receiving third data associated with theunmonitored store; and updating the model to more accurately predict theinventory level of the unmonitored store based on the third data. 30.The computer program product of claim 29, the process further comprisingreceiving fourth data from the one or more sensors associated with theone or more monitored stores.
 31. The computer program product of claim30, the process further comprising applying the fourth data to the modelto estimate a consumption rate of the unmonitored store.
 32. Thecomputer program product of claim 30 or 31, wherein receiving the fourthdata comprises receiving a most recent inventory level measurement forthe one or more monitored stores.